草庐IT

javascript - 通过javascript检测是否安装了Silverlight

全部标签

ruby-on-rails - Rails 测试 - 检查用户是否使用 Devise 登录

我正在尝试通过向我的SessionsController发出POST请求来测试是否有人能够登录我的站点。我在几个地方看到过这种推荐方式:it'mustbeabletosigninauser'douser=create(:user)post:create,format::js,user:{email:user.email,password:user.password,remember_me:0}assert_response:success@controller.current_user.must_equaluserend但是这个测试是不正确的。调用@controller.current

ruby - 为什么我的带有 ANSI 颜色代码的 IRB 提示通过复制/粘贴弄乱了翻页/翻页行为?

我添加到我的.irbrc:IRB.conf[:PROMPT].reverse_merge!(:RAILS_ENV=>{:PROMPT_I=>"#{current_app}#{rails_env}#{prompt}",:PROMPT_N=>"#{current_app}#{rails_env}#{prompt}",:PROMPT_S=>nil,:PROMPT_C=>"?>",:RETURN=>"=>%s\n"})IRB.conf[:PROMPT_MODE]=:RAILS_ENV如果我这样做:current_app="\e[31mfoo_bar_app\e[0m"rails_env="\e

ruby - 错误 "non-absolute home"通过网络 :SSH

有问题的代码Net::SSH.start('servername','user')这将返回“非绝对主页”。“用户”实际上有一个主目录。一种建议的方法是使用IdentityFile的完整路径修改~/.ssh/config。这并没有解决问题。其中最疯狂的部分是,如果通过irb或控制台调用,代码可以正常工作。当我们尝试从类方法(使用相同的代码)中调用它时,它会返回“非绝对主页”错误。“用户”也可以通过命令行ssh进入服务器而不会出现问题。服务器正在运行Ubuntu。更新感谢@Phrogz-解决方法是将ENV['HOME']设置为'/home/deploy'。但是,我还没有弄清楚为什么$HOM

ruby-on-rails - 带有 cron 的可安装引擎(每当 gem 时)

是否可以使用cron(通过whenevergem)直接在可安装的引擎模型上运行任务。我认为cron无法从主应用程序启动,因为可安装的引擎应该是隔离的。我可以在普通的Rails应用程序中随时使用它,而且效果很好,但我需要以引擎风格的方式运行任务。谢谢 最佳答案 你不能拿RailsEngine独立并直接执行任务,例如Rake任务或调用模型。将RailsEngine视为迷你Rails应用程序。它为安装父Rails应用程序提供功能和特性。引擎本身是不完整的。将引擎安装到Rails应用程序后,它可以访问正确启动和运行所需的所有配置和初始化程序

ruby - 无法使用 ruby​​ 2.0.0 安装 ruby​​gems

几个小时以来,我一直在尝试安装ruby​​gems,但总是失败。错误是:Installingrubygems-2.0.3forruby-2.0.0-p0..............................................................................................................................Errorrunning'envGEM_PATH=/Users/Chris/.rvm/gems/ruby-2.0.0-p0:/Users/Chris/.rvm/gems/ruby-2.0.

ruby - 在 Ruby 的 BigDecimal 中是否使用 String 或 Integer

引用BigDecimal类的文档,n,m=a.precsprecreturnsnumberofsignificantdigits(n)andmaximumnumberofsignificantdigits(m)ofa.我对以下与BigDecimal相关的输出感到困惑。require'bigdecimal'BigDecimal.new('1').precs#=>[9,18]BigDecimal.new(1).precs#=>[9,27]我不明白为什么当传递String时,有效数字的最大数目比传递Fixnum时少。它还会导致任何精度问题吗? 最佳答案

ruby - 如何通过 Sublime Text 2 构建系统运行 Ruby Gem?

我尝试了不同的设置,例如:{"cmd":"rubocop'$file_name'"}我也试过设置路径等:{"cmd":"rubocop'$file_name'","path":"~/.rvm/bin","selector":"source.rb","working_dir":"$project_path"}对于这两者,我都收到一条错误消息:[Errno2]Nosuchfileordirectory[cmd:rubocop'configurer.rb'][dir:/home/rafal/Documents/Projects/configurer][path:/usr/lib/lightd

ruby - RVM 从本地源安装 ruby

我不敢相信这不是一个更常见的问题。我想安装ruby​​1.9.2,我想把它作为我的RVM安装的一部分。1.9.2的链接在ruby​​-lang站点上有404',所以我从ruby​​github页面复制了tar.gz,将它重新压缩成tar.bz2,就像rvm需要的那样,并将它放到~/.rvm/文件但是,每次我调用rvminstall1.9.2-p320时,它都会从~/.rvm/archives中删除源tar.bz2并尝试重新下载tar.bz2来自ruby​​-lang网站。--force和--disable-binary选项不会阻止删除和重新下载尝试。有没有办法明确地将rvm指向源tar

ruby-on-rails - 是否有 RESTful 方式为 habtm 配置路由?

在Rails中,您可以使用嵌套路由为has_one和has_many关系创建RESTful路由。可以在RailsGuides上找到示例请问有没有什么好的方法可以为habtm关系配置RESTful路由?例如,如果我有一个关系A-habtm-B,我的想法是为A配置嵌套路由has_manyB,为B配置嵌套路由has_manyA。这行得通吗?或者有更好的方法吗? 最佳答案 由于HABTM是双向has_many关联,您的方法是正确的,两边的嵌套资源都可以正常工作。除此之外,我会重新考虑使用has_many:through关联而不是HABTM,

ruby - Array#-(减法运算符)如何比较元素是否相等?

当我调用Array#-时,它似乎没有对我正在比较的字符串调用任何比较方法:classStringdef(v)puts"#{self}#{v}"super(v)enddef==(v)puts"#{self}==#{v}"super(v)enddef=~(v)puts"#{self}=~#{v}"super(v)enddef===(v)puts"#{self}==#{v}"super(v)enddefeql?(v)puts"#{self}.eql?#{v}"super(v)enddefequal?(v)puts"#{self}.equal?#{v}"super(v)enddefhash()